/**
*FileContentManager is a Java based file manager desktop application, 
*it can show, edit and manipulate the content of the files archived inside a zip.
*
*Copyright (C) 2007 
*
*Created by Camila Sanchez [http://mimix.wordpress.com/], Rafael Naufal [http://rnaufal.livejournal.com] and Rodrigo [rdomartins@gmail.com]
*
*FileContentManager is free software; you can redistribute it and/or
*modify it under the terms of the GNU Lesser General Public
*License as published by the Free Software Foundation; either
*version 2.1 of the License, or (at your option) any later version.
*
*This library is distributed in the hope that it will be useful,
*but WITHOUT ANY WARRANTY; without even the implied warranty of
*MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
*Lesser General Public License for more details.
*
*You should have received a copy of the GNU Lesser General Public
*License along with FileContentManager; if not, write to the Free Software
*Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package br.com.jteam.jfcm.model.services;

import br.com.jteam.jfcm.model.services.exception.ShowFileContentServiceException;

/**
 * <p>
 * Respons&aacute;vel pior criar uma inst&acirc;ncia espec&iacute;fica de um
 * tipo de arquivo({@link br.com.jteam.jfcm.model.FileType}) cujo conte�do
 * &eacute; renderiz&aacute;vel pela aplica&ccedil;&atilde;o.
 * 
 * 
 * @author Rafael Naufal <rafael.naufal@gmail.com>
 * @since 1.0
 * @version $Id$
 */
public interface ShowFileContentService
{
	/**
	 * <p>
	 * Cria uma inst&acirc;ncia de um tipo de arquivo espec&iacute;fico cujo
	 * conte�do deve ser renderiz&aacute;vel pela aplica&ccedil;&atilde;o.
	 * 
	 * @param name
	 *            Nome do arquivo cujo conte�do deve ser renderiz&aacute;vel.
	 * @param path
	 *            Caminho do arquivo cujo conte�do deve ser renderiz&aacute;vel.
	 * @return Uma inst&acirc;ncia espec&iacute;fica do arquivo de tipo ({@link
	 *         br.com.jteam.jfcm.model.FileType}) renderiz&aacute;vel pela
	 *         aplica&ccedil;&atilde;o.
	 * @throws ShowFileContentServiceException -
	 *             Caso o arquivo seja nulo ou seu tipo n&atilde;o seja
	 *             renderiz&aacute;vel pela aplica&ccedil;&atilde;o.
	 */
	br.com.jteam.jfcm.model.File createSpecificFileToBeViewed(	String name,
																String path) throws ShowFileContentServiceException;
}
